Technical Field
Embodiments described herein generally relate to execution of code on electronic devices. In particular, embodiments described herein generally relate to execution of code of different architectures on electronic devices.
Background Information
Until recently most smartphones, cellular phones, tablet computers, and the like, have been based on 32-bit architectures. They have had 32-bit architecture processors and 32-bit operating systems. A wide variety of 32-bit code has been written for these 32-bit architectures. For example, numerous mobile applications have been written for these devices. Also, 32-bit libraries have been written for these 32-bit architectures.
Recently, smartphones with 64-bit architectures have become available. These 64-bit architectures are based on 64-bit architecture processors and 64-bit operating systems. For example, the iPhone 5S has recently become available from Apple Corporation. The iPhone 5S includes an A7 processor chip with a 64-bit architecture and a 64-bit operating system known as iOS 7. Other 64-bit architecture smartphones have also been announced and/or are in development.
At least during the initial stages of deployment of these 64-bit architecture smartphones, it will likely be desirable to be able to provide backward compatibility so that already developed 32-bit code is able to run on these smartphones. This will allow the wide variety of existing 32-bit mobile applications and other 32-bit code to continue to be used.
The iPhone 5S and iOS 7 provide such backward compatibility. They are able to execute 32-bit code as well as 64-bit code. Also, the 32-bit code is able to use 32-bit libraries.